package com.dataseek.iot.operation.manager.util;

import com.alibaba.fastjson.JSONObject;

import java.util.*;

import static com.dataseek.iot.core.constant.DataConst.TEMP_MAP;

/**
 * @author cc
 * @Title: 创建图表绘制数据
 * @Description: 创建图表绘制数据
 * @date 2021/11/44:08 下午
 * @since 1.0
 */
public class ChartUtil {


    public static void createCell(String time, Object value, String column){
        Map cell = new HashMap();
        List l;
        cell.put("time", time);
        if(Objects.nonNull(value)){
            cell.put("value", value);
            if(TEMP_MAP.containsKey(column)){
                l = (List) TEMP_MAP.get(column);
            }else{
                l = new ArrayList();
            }
            l.add(cell);
            TEMP_MAP.put(column, l);
        }
    }

    /**
     * 根据字段列表创建图表需要的返回结果
     * @param time
     * @param columns
     * @param json
     * @return
     */
    public static Map createCells(String time, List<String> columns, JSONObject json){
        for(String  c : columns){
            Object value = json.get(c);
            createCell(time, value, c);
        }
        return TEMP_MAP;
    }
}
